package proyecto.negocio;

import java.util.Collection;

import proyecto.modelo.*;
import proyecto.modelo.enumeracion.EspacioComunEstado;
import proyecto.dao.*;
import proyecto.excepcion.*;

public class EspacioComunNegocio {

	// HISTORIA 8 (GMONTERO)
	public int registrarEspacioComun(int tipoVivienda, int idBloque, int capacidad,
			String nombre, String descripcion, EspacioComunEstado estado) throws DAOExcepcion {

		EspacioComun espacioVO = new EspacioComun();
		espacioVO.setTipoVivienda(tipoVivienda);
		espacioVO.setIdBloque(idBloque);
		espacioVO.setCapacidad(capacidad);
		espacioVO.setNombre(nombre);
		espacioVO.setDescripcion(descripcion);
		espacioVO.setEstado(estado);

		EspacioComunDAO dao = new EspacioComunDAO();
		try {
			int cod = dao.insertar(espacioVO);
			return cod;
		} catch (DAOExcepcion e) {
			throw e;
		}

	}
	
	public void updateEspacioComun(int idPropiedad, int tipoVivienda, int idBloque, int capacidad,
			String nombre, String descripcion, EspacioComunEstado estado) throws DAOExcepcion {

		EspacioComun espacioVO = new EspacioComun();
		espacioVO.setIdPropiedad(idPropiedad);
		espacioVO.setTipoVivienda(tipoVivienda);
		espacioVO.setIdBloque(idBloque);
		espacioVO.setCapacidad(capacidad);
		espacioVO.setNombre(nombre);
		espacioVO.setDescripcion(descripcion);
		espacioVO.setEstado(estado);

		EspacioComunDAO dao = new EspacioComunDAO();
		try {
			dao.update(espacioVO);
		} catch (DAOExcepcion e) {
			throw e;
		}

	}
	
	public void eliminarEspacioComun(int id) throws DAOExcepcion{
		
		EspacioComunDAO dao = new EspacioComunDAO();
		try {
			dao.eliminar(id);
		} catch (DAOExcepcion e) {
			throw e;
		}
		
	}

	// HISTORIA 9 (GRAMIREZ)
	public Collection<EspacioComun> listarEspacioComun()
			throws DAOExcepcion {
		
		EspacioComunDAO dao = new EspacioComunDAO();
		return dao.listar();
	}
}
